package com.crm.mapper;

import java.util.List;

import org.apache.ibatis.annotations.Mapper;

import com.crm.entity.Modules;
import com.crm.entity.ModulesTreeNode;

@Mapper
public interface ModulesMapper {
	
	/**
	 * 根据id删除
	 * @param id
	 * @return
	 */
    int deleteByPrimaryKey(Integer id);

    /**
     * 条件添加
     * @param record
     * @return
     */
    int insert(Modules record);

    /**
     * 根据id查询模块
     * @param id
     * @return
     */
    Modules selectByPrimaryKey(Integer id);
    
    /**
     * 查询全部
     * @return
     */
    List<Modules> selectListAll();
    
    /**
     * 根据角色id查询全部模块
     * @param rolesIds List<Modules>
     * @return
     */
    List<Modules> selectRoleIdListAll(String rolesIds);

    /**
     * 条件修改
     * @param record
     * @return
     */
    int update(Modules record);
    
    /**
     * 根据id查询全部
     * @param id List<ModulesTreeNode>
     * @return
     */
    List<ModulesTreeNode> selectAll(String rolesIds);
    
    /**
     * 根据角色id查询全部树形<用户设置权限>
     * @param rolesIds List<ModulesTreeNode>
     * @return
     */
    List<ModulesTreeNode> selectAllTree(String rolesIds);
    
    /**
     * 查询全部树形
     * @return
     */
    List<ModulesTreeNode> selectAllModulesTree();
}